package com.yuanfengPlus.expenseitem.service;

import com.yuanfengPlus.expenseitem.model.ExpenseItemInfo;
import com.yuanfengPlus.utils.PageResult;
import com.yuanfengPlus.utils.Result;

import java.util.List;
import java.util.Map;

public interface IExpenseItemService {
    /**
     * 插入一个新的报销项目信息
     *
     * @param expenseItemInfo 待插入的报销项目信息对象
     * @return 返回插入操作的结果
     */
    Result<String> insert(ExpenseItemInfo expenseItemInfo);

    /**
     * 更新一个已存在的报销项目信息
     *
     * @param expenseItemInfo 待更新的报销项目信息对象
     * @return 返回更新操作的结果
     */
    Result<String> update(ExpenseItemInfo expenseItemInfo);

    /**
     * 根据参数选择报销项目信息的分页结果
     *
     * @param params 包含查询条件的参数映射
     * @return 返回根据查询条件筛选出的报销项目信息的分页结果
     */
    PageResult select(Map<String, Object> params);

    Result<String> delete(String expense_ID);
    Result<List<ExpenseItemInfo>> selectDusbtin();
}
